/**
 * Copyright 2010 Creative Works, Inc.
 * Creative Works licenses this file to you under the Apache License, version
 * 2.0 (the "License"); you may not use this file except in compliance
 * with the License.  You may obtain a copy of the License at
 *    http://www.apache.org/licenses/LICENSE-2.0
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
 * implied.  See the License for the specific language governing
 * permissions and limitations under the License.
 */
package org.sendvox.freswitch.event;

import org.sendvox.freswitch.event.impl.BaseMessage;

public class ChannelStateMessage extends BaseMessage {

	private static final long serialVersionUID = -4737755640527529717L;

	private static final Event EVENT_NAME = Event.CHANNEL_STATE;

	private ChannelState channelState; 
	private ChannelCallState channelCallState;
	private Integer channelStateNumber; 
	private String channelName;
	private String uniqueID;
	private String callDirection;
	private String presenceCallDirection;
	private String answerState;

	@Override
	public Object getThis() {
		return this;
	}

	@Override
	public Event getEventName() {
		return EVENT_NAME;
	}

	/**
	 * @return the channelState
	 */
	public ChannelState getChannelState() {
		return channelState;
	}

	/**
	 * @param channelState the channelState to set
	 */
	public void setChannelState(ChannelState channelState) {
		this.channelState = channelState;
	}

	/**
	 * @return the channelCallState
	 */
	public ChannelCallState getChannelCallState() {
		return channelCallState;
	}

	/**
	 * @param channelCallState the channelCallState to set
	 */
	public void setChannelCallState(ChannelCallState channelCallState) {
		this.channelCallState = channelCallState;
	}

	/**
	 * @return the channelStateNumber
	 */
	public Integer getChannelStateNumber() {
		return channelStateNumber;
	}

	/**
	 * @param channelStateNumber the channelStateNumber to set
	 */
	public void setChannelStateNumber(Integer channelStateNumber) {
		this.channelStateNumber = channelStateNumber;
	}

	/**
	 * @return the channelName
	 */
	public String getChannelName() {
		return channelName;
	}

	/**
	 * @param channelName the channelName to set
	 */
	public void setChannelName(String channelName) {
		this.channelName = channelName;
	}

	/**
	 * @return the uniqueID
	 */
	public String getUniqueID() {
		return uniqueID;
	}

	/**
	 * @param uniqueID the uniqueID to set
	 */
	public void setUniqueID(String uniqueID) {
		this.uniqueID = uniqueID;
	}

	/**
	 * @return the callDirection
	 */
	public String getCallDirection() {
		return callDirection;
	}

	/**
	 * @param callDirection the callDirection to set
	 */
	public void setCallDirection(String callDirection) {
		this.callDirection = callDirection;
	}

	/**
	 * @return the presenceCallDirection
	 */
	public String getPresenceCallDirection() {
		return presenceCallDirection;
	}

	/**
	 * @param presenceCallDirection the presenceCallDirection to set
	 */
	public void setPresenceCallDirection(String presenceCallDirection) {
		this.presenceCallDirection = presenceCallDirection;
	}

	/**
	 * @return the answerState
	 */
	public String getAnswerState() {
		return answerState;
	}

	/**
	 * @param answerState the answerState to set
	 */
	public void setAnswerState(String answerState) {
		this.answerState = answerState;
	}

}
